06_PROJECTS PORTAL
Week 2 Arrays · Dual Sovereign Core (AR / EN)
⚑ PROBLEM SET SPECIFICATIONS & CAPSTONES
AYMAN ELMASRY
Computational Creative Director · AI Prompt Engineer
Founder of Ayman Elmasry LLC
πŸ”’ ⚑ AEL Sovereign Seal (Active Master Verification)
{
  "ael_seal": "AEL CS Encyclopedia β€” Β© Ayman Elmasry",
  "owner": "Ayman Elmasry",
  "legal_entities": [
    "Ayman Elmasry LLC (UAE)",
    "Ayman Elmasry Advertising & Marketing (Egypt)"
  ],
  "syllabus_source": "Harvard CS50x 2026-2027",
  "domain": "Week 2: Official Problem Sets & Architecture",
  "document_type": "06_Projects",
  "methodology": "8-Stage Sub-Silicon Execution Paradigm",
  "system_version": "v3.0"
}

Week 2 Projects Specifications: Scrabble & Ciphers

Section 1: Scrabble Project Specifications

Develop an interactive terminal application that prompts two distinct players for vocabulary strings, computes their cumulative point totals, and displays the definitive victor or a tie state.

===================================================================================
             SCRABBLE EXECUTION FLOWCHART
===================================================================================

  [ Input P1 ] ──> compute_score() ──┐
                                     β”œβ”€β”€> Comparison ──> [ Print: Player X wins! / Tie! ]
  [ Input P2 ] ──> compute_score() β”€β”€β”˜

===================================================================================
  • Architecture of compute_score: The subroutine must accept a character string parameter string word and return a pure integer score, strictly ignoring all numerical digits, punctuation, and whitespace symbols.

Section 2: Readability Project Specifications

The application prompts the user for an expansive text string and applies the strict Coleman-Liau formulation.

  • Mathematical Rounding: Strict utilization of round() from <math.h> to evaluate a rounded integer index.
  • Integer Division Hazard: When calculating averages, developers must explicitly cast integer operands to floating-point values to prevent runtime truncation of decimal precision.

Section 3: Cryptographic Project Specifications

Definitive execution guardrails for the Caesar and Substitution encryption binaries.

  • Caesar Key Verification: The runtime must verify exactly one parameter is passed argc == 2, ensuring it represents a valid numeric key. Otherwise, print Usage: ./caesar key and return exit code 1.
  • Substitution Key Engineering: The runtime must verify the key contains exactly 26 unique alphabetical characters, while preserving cleartext casing and formatting perfectly.